package com.hotel.service;

import com.hotel.pojo.Hotel;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hotel.pojo.PageResult;
import com.hotel.pojo.RequestParams;

import java.io.IOException;
import java.util.List;
import java.util.Map;

/**
 * 酒店业务类
 * @author 86132
 */
public interface HotelService extends IService<Hotel> {
    /**
     * 条件查询
     * @param params 参数
     * @return 分页列表
     * @throws IOException 异常
     */
    PageResult search(RequestParams params) throws IOException;

    /**
     * 多条件过滤
     * @param params 参数
     * @return 列表
     * @throws IOException 异常
     */
    Map<String, List<String>> filters(RequestParams params) throws IOException;

    /**
     * 自动补全
     * @param prefix 关键字
     * @return 提示列表
     * @throws IOException 异常
     */
    List<String> getSuggestion(String prefix) throws IOException;

    void insertById(Long id);

    void deleteById(Long id);
}
